ver='Ver-051101'

bid='com.ss.ios.ec.jumanjiV2'

function test()

	zh=readFile('/var/mobile/Media/TouchSprite/lua/zh.txt')
	dialog("账号个数"..#zh, 0)
    for i=1 ,#zh do
	dialog("当前进度"..i..'/'..#zh, 2)
	app.run(bid)
	d{
    	{'同意',{  142,  761, 0xffffff},{  187,  682, 0xd7c4fd},{  537,  664, 0xd7c4fd},{  377, 1253, 0x000000},},
    	{'使用其他号码',{  176,  770, 0xffffff},{  337,  742, 0xffffff},{  264,  673, 0x7a3bf9},{  646,  681, 0x7a3bf9},},
    	
	}
	
	d('国家',  115,  496, 0x222222 ) d()
	
	d( 'j', 739,  696, 0xd4d4d4 )
	
	d('jnd',  73,  348, 0xf5f5f5 )
	
	d('输入手机号',  260,  496, 0xfcfcfc ) d(2)
	
	p(zh[i]:split('----')[1])
	
	inputStr(zh[i]:split('----')[1]) d(2)
	
	if  not d{{'登录',{  175,  670, 0x7a3bf9},{  518,  680, 0x7a3bf9},}} then dialog("？小问题", 0) end d(5)
	
	yzm=nil
	
	for j=1,15 do
		a,b,c=http.get(zh[i]:split('----')[2])
		
		if a==200 then if c:find('验证码') then yzm=c:split('验证码')[2]:split('＠')[1] p(yzm) break end end
		
		p('获取中'..c)
		
		d(3)
		
	
		
	
	end
	
	str=''
	
	for k=i+1,#zh do
	
		str=str..zh[k]..'\r\n'
	
	end
	
	
	if not yzm then
	
		dialog("?没有获取到"..zh[i]:split('----')[1], 2)
		
		writeFileString('/var/mobile/Media/TouchSprite/lua/no.txt',zh[i]:gsub('\r',''),'a')
		
	else
		
		p(yzm) inputnum(yzm:sub(1,4)) d{{'同意使用',{  249, 1191, 0x7a3bf9},{  517, 1195, 0x7a3bf9},},time=2}
		
		writeFileString('/var/mobile/Media/TouchSprite/lua/yes.txt',zh[i]:gsub('\r',''),'a')
		
	end
	
	writeFileString('/var/mobile/Media/TouchSprite/lua/zh.txt',str)
	
	d(2)
	
	
	
	faker.佐罗.下一条() d()
	
	end
	
	dialog("ok", 0)
lua_exit()
main()
end
function set()
    vpn.off()
    UI.新建(ver,_name)
	UI.输入框('要跑几个号','10')
	UI.多选框('修改资料,修改yy参数,跑任务,发布作品')
	UI.注释('-----------资料选项')
	UI.多选框('头像,名字,简介')
	UI.注释('修改头像将清空相册！！！图片来源网络')
	UI.输入框('名字包含')
	UI.输入框('简介内容')
	UI.下拉框('男女','关闭,男,女')
	UI.下拉框('年龄','关闭,10-20,21-30,31-40')
	UI.下拉框('地区','关闭,随机,安徽,澳门,北京,重庆,福建,广东,甘肃,广西,贵州,湖北,河北,黑龙江,海南,湖南,河南,吉林,江苏,江西,辽宁,内蒙古,宁夏,青海,四川,山东,上海,陕西,山西,天津,台湾,香港,新疆,西藏,云南,浙江')
	UI.注释('-----------发布选项')
	UI.下拉框('作品数量','1,2,3')
	UI.注释('-----------yy选项')
	UI.输入框('用户id')
	UI.单选框('性别','男,女')
	UI.输入框('个数')
	UI.输入框('间隔')
	UI.注释('-----------任务选项')
	UI.下拉框('任务1','关闭,直播间,主页,搜索,推荐,扫一扫')
	UI.下拉框('任务2','关闭,直播间,主页,搜索,推荐,扫一扫')
	UI.下拉框('任务3','关闭,直播间,主页,搜索,推荐,扫一扫')
	UI.下拉框('任务4','关闭,直播间,主页,搜索,推荐,扫一扫')
	
    UI.显示()
	if 修改yy参数 then if not tonumber(间隔) then dialog('yy参数，间隔输入有误') lua_exit() end end
end
function start()

test()

	zh=readFile('/var/mobile/Media/TouchSprite/lua/zh.lua')
	dialog("账号个数"..#zh, 0)
    for i=1 ,#zh do
	dialog("当前进度"..i..'/'..要跑几个号, 2)
	app.run(bid)
	
	function 我的界面(  )
		 -- 函数体
	    return d{
        		{'我的界面',{  670, 1332, 0xe8e8e8},{  673, 1332, 0xe8e8e8},{  675, 1332, 0xe8e8e8},{  676, 1332, 0xe8e8e8},{374, 1284, 0x161616}},
        		{'我知道了',{  366,  989, 0xffffff},{  273,  430, 0xffffff},{  335,  459, 0xff5086},{  426,  377, 0x1ee0f2},{  529,  550, 0x00b4f7},},
        		{'一键登录',{  244,  768, 0xfe2c55},{  584,  769, 0xfe2c55},{   55,   82, 0x161823},},
        		{'短信界面',{  199,  554, 0xfe2c55},{  562,  559, 0xfe2c55},{  537,  678, 0x000000},},
        		{'暂不',{  235,  946, 0xffffff},{  246,  476, 0xffffff},{  377,  479, 0x1fe0f2},{  526,  531, 0x00b4f7},},
        		{'就不给',{  239,  894, 0xffffff},{  371,  529, 0xff498f},{  391,  515, 0x430625},{  445,  526, 0xffd6e1},{  471,  528, 0xffecf1},{  570,  554, 0xffffff},},
        		{'下线提醒',{  113,  529, 0xffffff},{  613,  533, 0xffffff},{  382,  569, 0x161823},{  365,  776, 0x161823},{  602,  785, 0xffffff},{  151,  791, 0xffffff},},
        		{'好友推荐',{  647,  239, 0x83848a},{  548,  362, 0xfe2c55},{  556,  506, 0xfe2c55},{  548,  662, 0xfe2c55},{  102,  231, 0xffffff},},
        		
        		
        		{'暂时不要',{  231,  904, 0xffffff},{  367,  517, 0xff498f},{  391,  498, 0x430625},{  446,  522, 0xffd6e1},},
        		{'上滑查看更多视频',{  252,  890, 0xffffff},{  271,  890, 0xffffff},{  361,  891, 0xffffff},{  552,  886, 0xffffff},{  353, 1277, 0x808080},},
        		{'我',{  679, 1279, 0x808080},{  349, 1281, 0xffffff},{ 415, 1285, 0xfe2c55},{  375, 1283, 0x161616},},
        		
        		fun={
        			上滑查看更多视频=function( ... )
        				moveTo(375, 1008,364, 225,50) d(3)
        			end,
        			一键登录=function (  )
        				return true
        			end,
        			短信界面=function (  )
        				return true
        			end,
        			下线提醒=function (  )
        				return true
        			end,
        			我=function (str,x,y  )
        				
        				d(3)
        				
        				d(str,x,y)
        				
        			end
        		}
        	}
	end
	我的界面()
	if d{
		{'一键登录',{  244,  768, 0xfe2c55},{  584,  769, 0xfe2c55},{   55,   82, 0x161823},},
		{'短信界面',{  199,  554, 0xfe2c55},{  562,  559, 0xfe2c55},{  537,  678, 0x000000},},
		{'下线提醒',{  113,  529, 0xffffff},{  613,  533, 0xffffff},{  382,  569, 0x161823},{  365,  776, 0x161823},{  602,  785, 0xffffff},{  151,  791, 0xffffff},},
		fun={
			短信界面=function (  )
				return true
			end,
			下线提醒=function (  )
				return true
			end,
		},
		time=1
		
	} then p('掉号处理') faker.佐罗.备注('掉号') goto js end
	
	if 修改资料 then 
	
		function 等待完成( ... )
			for i=1,10 do if isColor( 317,  644, 0x030405 ) then d() break end d(0.5) end
		end
		
		d{
			{'个人资料',{  108,  211, 0x161823},{  656,  208, 0x161823},{  708,  560, 0x8a8b91},{  708,  664, 0x8a8b91},},
			{'编辑资料',{  413,  308, 0x393a44},{  673, 1331, 0xe8e8e8},{  349, 1273, 0xffffff},{  374, 1283, 0x161616},},
		}
		
		if 头像 then
		
		p('正在下载并保存头像',5)
		
		clearAllPhotos() d(2)
		code,_,body=http.get(url..'MM ('..get.number(1,938)..').jpg')
		if code==200 then writeFileString(userPath().."/res/temp.jpg",body) end
		saveImageToAlbum(userPath().."/res/temp.jpg")
		
		d()
		
		
		d('更换头像',  380,  282, 0x877673 )
		
		if isColor(  221,  902, 0xc7c7ca ) then d('相册选择',  379, 1015, 0xc7c7cb  ) else d('相册选择', 100, 1127, 0x6fa5e2 ) end d(2)
		
		d{{'取消',{   66,  135, 0x2b2d37},{  258,  658, 0x999999},{  312,  649, 0x999999},{  343,  652, 0x999999},},time=3}
			
		if d{{'更换头像',{  373,  285, 0x916e6d},{   39,   83, 0xe8e8e9},{  709,  560, 0x8a8b91},{  727,  560, 0x161823},},time=1} then if isColor(  221,  902, 0xc7c7ca ) then d('相册选择',  379, 1015, 0xc7c7cb  ) else d('相册选择', 369, 1127, 0x6fa5e2 ) end d(2) end
		
		d('第一个',  138,  393, 0xf3f2f8 ) d()
		
		if not isColor(  378, 1270, 0x838383 ) then d('第一个',  138,  393, 0xf3f2f8 ) d() end 
		
		d('确定',  681, 1285, 0x9a263d ) d()
		
		等待完成()
		
		end
		
		if 名字 then
		
		d('名字',  679,  559, 0x161823 ) d()
		
		get.all()
		
		inputText(名字包含..get.abc())
		
		d()
		
		d('保存',  682,   83, 0x161823 )
		
		等待完成()
		
		
		end
		
		if 简介 then
		
		d('简介',  564,  776, 0x8b8c91 )
		
		get.all()
		
		inputText(简介内容..get.abc()) d()
		
		d('保存',  682,   83, 0x161823 )
		
		等待完成()
		
		end
		
		if 男女~='关闭' then
		
			d('性别',  664,  875, 0x7a7b81 )
		
			if 男女=='男' then d('男',  425,  893, 0xc7c7cb ) else d('女',  433, 1017, 0xc6c7ca ) end
			
			等待完成()
		
		end
		
		if 年龄~='关闭' then
		
			d('生日',  697,  977, 0x161823 ) d()
			
			快速滑动({{  212, 1270, 0xffffff},{  228,  480, 0x0b0c11},}) d(5)
			
			temp=get.number(年龄:split('-')[1],年龄:split('-')[2])
			
			for i=1,math.floor(temp/5) do
			
				
			
				向下滑动({{  228,  950, 0x0b0c11},{  212, 1270, 0xffffff},}) d(0.2)
			
			
			end
			
			for i=1,math.fmod(temp,5) do
			
				向下滑动({{  228,  950, 0x0b0c11},{  212, 1030, 0xffffff},}) d(0.2)
				
			end
			
			快速滑动({{  371, 1270, 0xffffff},{  371,  get.number(600,1000), 0x0b0c11},}) d()
			
			快速滑动({{  530, 1270, 0xffffff},{  530,  get.number(600,1000), 0x0b0c11},}) d(5)
			
			d('确定', 681,  877, 0xffffff)
			
			等待完成()
		
		end
		
		if 地区~='关闭' then
		
			位置tab=('安徽,澳门,北京,重庆,福建,广东,甘肃,广西,贵州,湖北,河北,黑龙江,海南,湖南,河南,吉林,江苏,江西,辽宁,内蒙古,宁夏,青海,四川,山东,上海,陕西,山西,天津,台湾,香港,新疆,西藏,云南,浙江'):split(',')
		
			if 地区=='随机' then 位置=位置tab[get.number(1,#位置tab)] else 位置=地区 end
			
			d('地区',  705, 1080, 0x161823 )
			
			d('中国',  686,  608, 0x161823 )
			
			for i=1,#位置tab do
			
				if 位置==位置tab[i] then 位置=i end
			
			end
			
			位置tab=位置tab[位置]
			
			if 位置>11 then 向上滑动({{  361, 1265, 0x161823},{  348,  70, 0x161823},}) d()  位置=位置-11 end
			
			if 位置>11 then 向上滑动({{  361, 1265, 0x161823},{  348,  70, 0x161823},}) d() 位置=位置-11 end
			
			d(位置tab,61,70+104*位置)
			
			keepScreen(true)
			
			for i=1333,200,-1 do
			
				if not isColor(47,i, 0x161823 ) then 位置=i break end
				
			end
			
			keepScreen(false)
			
			d('随便点了',47,get.number(176,位置))
			
			等待完成()
			
			
		end
		
		
		d{{'返回',{   39,   83, 0xe7e7e8},{  708,  102, 0x161823},{  709, 1184, 0x8a8b91},{   38,   83, 0xe7e7e9},},}
	
	end
	
	if 发布作品 then
	
	作品数量=tonumber(作品数量)
	
	for i=1,作品数量 do
	
		d{
		
		{'所有照片',{  153,   82, 0xffffff},{   39,   94, 0x161823},{   47,   83, 0x161823},{  443,   92, 0x161823},{  651, 1263, 0xf1f1f2},},
		{'发布',{  374, 1284, 0x161616},{  351, 1268, 0xffffff},{  394, 1271, 0xffffff},{  395, 1298, 0xffffff},{  414, 1279, 0xfe2c55},{  334, 1287, 0x10dff9},},
		{'相册',{  594, 1147, 0x91caef},{  341, 1131, 0xfe2c55},{  374, 1159, 0xffffff},{  411, 1140, 0xfe2c55},{  446, 1150, 0xffffff},},
		{'我知道了',{  262, 1225, 0xfe2c55},{  509, 1228, 0xfe2c55},{  377,  936, 0xfee5ea},{  511,  985, 0xffffff},},
		
		}
		
		d('第'..i..'个', 180*i-30,  96+180, 0x685e5e  )
		
		d('下一步',660, 1270, 0xf1f1f2 ) d()
		
		d('下一步', 647,   74 ) d()
		
		d('下一步',660, 1270, 0xf1f1f2 ) d()
		
		d('发布',660, 1270, 0xf1f1f2 ) d()
		
		if not d{	
			{'以后再说',{  241,  938, 0x50525a},{  206,  526, 0xffffff},{  357,  478, 0xffb5c5},{  391,  489, 0xffb5c5},{  556,  514, 0xff4d7c},},
			{'作品发布完成',{   87,   44, 0xffffff},{  677,   50, 0xffffff},{  197,  200, 0xffffff},{  709,  191, 0xffffff},},
			time=50,
fun={		
		以后再说=function( str,x,y )
				d(str,x,y)
				
				return true
			end
		}
		
		} then dialog('发布失败',20) end
	end
	
	end
	
	
	 if not 我的界面() then closeApp(bid) d(2) 我的界面() end
	 
	if 修改yy参数 then
	d{
		{'设置页',{  153, 1262, 0xffffff},{  350, 1261, 0x007aff},{  557, 1255, 0xffffff},},
		{'开始',{  435,  409, 0xff0000},{  448,  409, 0xff0000},{  467,  417, 0xff0000},},
		{'返回',{   39,   83, 0xe7e7e8},{  708,  102, 0x161823},{  709, 1184, 0x8a8b91},{   38,   83, 0xe7e7e9},},
		
		fun={设置页=function(  )
			return true
		end}
	}
	
	d( '设置', 382,  562, 0xccbdbf ) d()
	d('用户id',  617,  239, 0xffffff ) d()
	
	if  isColor(  717,  961, 0xb2b7c2 ) then x1=717 y1=961 else x1=692 y1=1273 end
	get.all()
	inputText(用户id) d() d('确定',  692, 1273, 0xb0b5bf )
	
	d('个数',  433,  320 ) d(2)
	
	get.all()
	inputText(个数) d() d('确定',  692, 1273, 0xb0b5bf )
	
	d('性别',    320,  404) d()
	
	if 性别=='男' then d('男',373, 1248) else d('女', 381, 1118) end
	
	
	------
	
	d('间隔',   250,  500 ) d()
	
	get.all()
	
	inputText(间隔) d() d('确定',  692, 1273, 0xb0b5bf )
	
	d('返回',  68,  135)
	
	end
	
	获取关注数=function( ... )
		str=getscr() or ''

		x=str:split("text = '关注")
		
		if x[2] then x=x[1]:split("text = '") end

		if x[2] then return x[#x-2]:split("'")[1] end
	end
	
	for i=1,4 do
		
		任务=_G['任务'..i]
		
		if 任务~='关闭' then 
			d{
			{'设置页',{  153, 1262, 0xffffff},{  350, 1261, 0x007aff},{  557, 1255, 0xffffff},},
			{'开始',{  435,  409, 0xff0000},{  448,  409, 0xff0000},{  467,  417, 0xff0000},},
			
			fun={设置页=function(  )
				return true
			end}
			}
		end
		if 任务=='直播间' then d('直播间',371,  672) end
		
		if 任务=='主页' then d('主页',  373,  780, 0xcac9cc ) end
		
		if 任务=='搜索' then d('搜索',  369,  902, 0xd8d4d0 ) end
		
		if 任务=='推荐' then d('推荐',  374, 1005, 0xd7d4d0   ) end
		
		if 任务=='扫一扫' then d('扫一扫', 356, 1122, 0x8bb4e1) end
		
		if 任务~='关闭' then
		
			关注数=获取关注数()
		
			d(10*间隔)
			
			if i==1 then
			
			d{
				{'知道了',{  287,  750, 0xc7c7cc},{  183,  606, 0xcac9cd},{  519,  607, 0xc7c8cb},{  596,  754, 0xc6c6cb},{  374, 1284, 0x121212},},
				time=1
			}
			
			d('首页',   74, 1282, 0x19191a )
			
			d{
				{'知道了',{  287,  750, 0xc7c7cc},{  183,  606, 0xcac9cd},{  519,  607, 0xc7c8cb},{  596,  754, 0xc6c6cb},{  374, 1284, 0x121212},},
				time=1
			}
			
			我的界面() d(5)
			
			关注数new=获取关注数()
			
			if 关注数==关注数new then 关注失败=true break end
			
			end
		
			d{
				{'知道了',{  287,  750, 0xc7c7cc},{  183,  606, 0xcac9cd},{  519,  607, 0xc7c8cb},{  596,  754, 0xc6c6cb},{  374, 1284, 0x121212},},
				time=个数*间隔
			}
		
		end 
		
	end
	
	if 关注失败 then 关注失败=nil p('关注失败') faker.佐罗.备注((关注数 or 关注数new or '')..'-关注失败') goto js end
	
	d('首页',   74, 1282, 0x19191a )
			
	我的界面() d(5)
	
	关注数=获取关注数() p('当前关注数'..(关注数 or '？'))
	
	if 关注数 then faker.佐罗.备注(关注数) end
	
	::js::
	
	faker.佐罗.下一条() d()
	
	end
end
function main()
    --set()
    start()
    dialog('脚本已完成\n'..os.date('[%m-%d-%H-%M-%S] ',os.time()))
    lua_exit()
end



--------增加
path={}
path.TouchSptite='/var/mobile/Media/TouchSprite/'
path.res=path.TouchSptite..'res/'
path.lua=path.TouchSptite..'lua/'
--------
file={}
function file.readString(file)
    return readFileString(file)
end
function file.readLine(file)
    return readFile(file)
end
--------
app={}
function app.run(bid,name)
    p('打开'..(name or bid))
    if frontAppBid()~=bid then runApp(bid) d(3) end
end
--------
faker={}
faker.佐罗={
	回主界面=function( ... )
		d{
		{'主界面',{  231,  766, 0xd6d6d6},{  526,  774, 0xd6d6d6},{  561,  914, 0xd6d6d6},},
		{'返回',{   21,   84, 0xffffff},{   34,   71, 0xffffff},{   31,   94, 0xffffff},},
		
		fun={主界面=function( ... )
			 return true
		end}
		
		}
	end,
    新机=function()
        app.run('zorro','佐罗')
		faker.佐罗.回主界面()
        p('新机')
        code,_,body=http.get('http://127.0.0.1:8844/cmd?fun=newrecord')
        d{{'清理完成',{315, 1301, 0x333333},{389, 1305, 0x333333},{440, 1302, 0x333333}}}
    end,
    备注=function(str)
        app.run('zorro','佐罗')
		faker.佐罗.回主界面()
        p('备注')
        code,_,body=http.get('http://127.0.0.1:8844/cmd?fun=change&remark='..urlEncoder(str..''))
        d{{'完成备注',{315, 1301, 0x333333},{389, 1305, 0x333333},{440, 1302, 0x333333}}}
    end,
    备份名=function()
        app.run('zorro','佐罗')
		faker.佐罗.回主界面()
        p('获取备份名')
        code,_,body=http.get('http://127.0.0.1:8844/cmd?fun=getcurrentrecord')
        if code==200 then body=json.decode(body) return body.data end
    end,
    删除=function(name)
        app.run('zorro','佐罗')
		faker.佐罗.回主界面()
        p('删除备份'..name)
        code,_,body=http.get('http://127.0.0.1:8844/cmd?fun=deleterecord&record='..name)
    end,
	下一条=function(  )
		app.run('zorro','佐罗')
		faker.佐罗.回主界面()
        p('切换下一条') p('',0) mSleep(1)
        code,_,body=http.get('http://127.0.0.1:8844/cmd?fun=nextrecord')
        d{{'切换完成',{315, 1301, 0x333333},{389, 1305, 0x333333},{440, 1302, 0x333333}}}
	end
}
--------
vpn={}
function vpn.on()
    return setVPNEnable(true)
end
function vpn.off()
    return setVPNEnable(false)
end
function vpn.status()
    return getVPNStatus()['active']
end
get={}
get.number=function( x,y )
	math.randomseed(getRndNum()) -- 随机种子初始化真随机数 
	return math.random(x,y)
end
get.abc=function( n )
	
	n=n or 6
	local tab='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
	local str=''
	for i=1,n do
		
		local m=get.number(1,#tab)
		
		str=str..tab:sub(m,m)
	 
	end
	return str
end

get.all=function(  )
	keyDown("RightGUI") 
		keyDown("a")
		keyUp("a")
		keyUp("RightGUI")
		d()
end

快速滑动=function(table_)
        local x1,y1,x2,y2=table_[1][1],table_[1][2],table_[2][1],table_[2][2]
        moveTo(x1,y1,x2,y2,50,0)
end
向下滑动=function( table_ ,js)
        js=js or 1
        local x1,y1,x2,y2=table_[1][1],table_[1][2],table_[2][1],table_[2][2]
        touchDown(x1,y1);    --在坐标 (150, 550) 按下
        for i = y1, y2, (50)*js do    --使用 for 循环从起始点连续横向移动到终止点
            touchMove(x1, i); 
            mSleep(17);        --延迟
        end
        touchMove(x1,y2-4)
        mSleep(23);
        touchMove(x1,y2-3)
        mSleep(43);
        touchMove(x1,y2-2)
        mSleep(86);
        touchMove(x1,y2-1)
        mSleep(166)
        touchUp(x1,y2);
end
向上滑动=function( table_ ,js)
        js=js or 1
        local x1,y1,x2,y2=table_[1][1],table_[1][2],table_[2][1],table_[2][2]
        touchDown(x1,y1);    --在坐标 (150, 550) 按下
        for i = y1, y2, (-50)*js do    --使用 for 循环从起始点连续横向移动到终止点
            touchMove(x1, i); 
            mSleep(17);        --延迟
        end
        touchMove(x1,y2+4)
        mSleep(23);
        touchMove(x1,y2+3)
        mSleep(43);
        touchMove(x1,y2+2)
        mSleep(86);
        touchMove(x1,y2+1)
        mSleep(166)
        touchUp(x1,y2);
end
 inputnum=function (num,sleep)
        p('点击数字键盘')
        local tab
        sleep=sleep or 0.1
        if not tonumber(num) then p('输入的不是数字') d() dialog('输入的不是数字',5) end
        num=tostring(num)
        if sfbl==1 then
            tab={{  137,  945, 0xffffff},{  372,  952, 0xececec},{  629,  943, 0xffffff},{  118, 1054, 0xdcdcdc},{  366, 1058, 0xdbdbdb},{  634, 1053, 0xffffff},{  131, 1164, 0xffffff},{  374, 1165, 0xffffff},{  627, 1165, 0xffffff},{  370, 1283, 0xffffff},}
            else
                tab={{  218, 1596, 0x000000},{  615, 1598, 0xffffff},{ 1049, 1591, 0x000000},{  217, 1762, 0xffffff},{  622, 1772, 0xffffff},{ 1048, 1762, 0xffffff},{  218, 1931, 0x000000},{  617, 1941, 0xffffff},{ 1051, 1939, 0xf9f9f9},{  624, 2116, 0xffffff},}
        end
        for i=1,num:len() do
            if num:sub(i,i)=='0' then d(num:sub(i,i),tab[10][1],tab[10][2],0,0) else d(num:sub(i,i),tab[tonumber(num:sub(i,i))][1],tab[tonumber(num:sub(i,i))][2],0,0) end
                mSleep(10)
        end
        d()
    end

require "TSLib"

if readFileString('/var/mobile/Media/TouchSprite/config/run.cfg'):split('.')[2]=='lua' then require 'main' p('>>>') test() p('<<<') else function nLog( ... ) end main() end

----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
----------------------------------------------------------------
--华丽分割线
